[% setvar title Rename @ARGV to @ARGS %]
<div id="archive-notice">
    <h3>This file is part of the Perl 6 Archive</h3>
    <p>To see what is currently happening visit <a href="http://www.perl6.org/">http://www.perl6.org/</a></p>
</div>
<div class='pod'>
<a name='TITLE'></a><h1>TITLE</h1>
<p>Rename @ARGV to @ARGS</p>
<a name='VERSION'></a><h1>VERSION</h1>
<pre>  Maintainer: Nathan Wiger &lt;<a href='mailto:nate@wiger.org'>nate@wiger.org</a>&gt;
  Date: 11 Aug 2000
  Last Modified: 11 Sep 2000
  Mailing List: <a href='mailto:perl6-language@perl.org'>perl6-language@perl.org</a>
  Number: 94
  Version: 2
  Status: Retracted</pre>
<a name='ABSTRACT'></a><h1>ABSTRACT</h1>
<p>Perl isn't C. Time to get over it. :-)</p>
<a name='NOTE ABOUT RETRACTION'></a><h1>NOTE ABOUT RETRACTION</h1>
<p>Beginner-friendly, at the expense of all the experts. Bad Idea.</p>
<a name='DESCRIPTION'></a><h1>DESCRIPTION</h1>
<p>@ARGV is Perl's version of something like C's argv/argc. However, I
would argue its naming is bad, because:</p>
<pre>   1. It isn't used like and doesn't behave like C's argv/argc
      in many circumstances

   2. There's no $ARGC to go with it

   3. It's not a word or anything close to a word

   4. Perl isn't C (thank heavens!)

   5. @ARGV makes little sense to people (like me) from a sh/ksh
      background</pre>
<p>@ARGS is a better choice for several reasons:</p>
<pre>   1. It's closer to a word and so is faster to read [1]

   2. It's easier to explain and remember &quot;Your command-line
      args are contained in @ARGS&quot;

   3. When you say &quot;$var = $ARGS[2]&quot; it's easier to glance
      at and tell what you're getting quickly

   4. It makes it more consistent with other word-like
      Perl vars like $VERSION.

   5. There's no expectation that it works like or should
      be used like C's argv/argc</pre>
<p>I don't feel this is changing something just for the sake of changing
something. I think it actually helps clarify a key difference between
Perl and C. However, feel free to disagree with me. Be nice. ;-)</p>
<a name='IMPLEMENTATION'></a><h1>IMPLEMENTATION</h1>
<p>Change @ARGV to @ARGS. Make sure that the translator changes any code
references in a person's script too. Make sure shift works on @ARGS,
etc, etc.</p>
<a name='NOTES'></a><h1>NOTES</h1>
<p>[1] This is true. I did a lot of work in cognition and artifical
intelligence in college. Your brain reads words and legal word-like
constructs about 3 times faster than non-words, even if there's only a
one or two character difference. For example, you'd read &quot;fleggies&quot; much
faster than &quot;fleggitg&quot;. Kind of neat, eh?</p>
<a name='REFERENCES'></a><h1>REFERENCES</h1>
</div>
